package com.sxpi.zixun.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sxpi.zixun.pojo.AdminPermission;
import com.sxpi.zixun.pojo.AdminRole;
import com.sxpi.zixun.pojo.AdminUser;
import org.apache.ibatis.annotations.Param;
import java.util.List;

/**
 * @Author: 董伟豪
 * @Date: 2022/8/24 12:32
 */
public interface AdminUserMapper extends BaseMapper<AdminUser> {

    /**
     * 查询用户对应的角色
     * @param userId
     * @return
     */
    List<AdminRole> findByUserRoles(@Param("userId")Long userId);

    /**
     * 查询用户对应的权限
     * @param userId
     * @return
     */
    List<String> findByUserPermission(@Param("userId")Long userId);

    /**
     * 查询用户是否已经绑定角色
     * @param userId
     * @param roleId
     * @return 保存成功的时候,返回记录数（myBatis的语法）
     */
    int countUserRole(@Param("userId")Long userId,@Param("roleId")Long roleId);

    /**
     * 保存用户角色信息
     * @param userId
     * @param roleId
     * @return 保存成功的时候,返回记录数（myBatis的语法）
     */
    int saveUserRole(@Param("userId")Long userId,@Param("roleId")Long roleId);

    /**
     * 删除用户角色信息
     * @param userId
     * @param roleId
     * @return 保存成功的时候,返回记录数（myBatis的语法）
     */
    int deleteUserRole(@Param("userId")Long userId,@Param("roleId")Long roleId);
}
